﻿using System.Collections.Generic;
using WeShare.WeiXin.Common;

namespace WeShare.WeiXin.Mp.MsgEntity
{
    public class GroupSendJobEventMsg : EventMsg
    {
        public string Status { get; set; }
        /// <summary>
        /// tag_id下粉丝数；或者openid_list中的粉丝数
        /// </summary>
        public string TotalCount { get; set; }
        /// <summary>
        /// 过滤（过滤是指特定地区、性别的过滤、用户设置拒收的过滤，用户接收已超4条的过滤）后，准备发送的粉丝数，原则上，FilterCount = SentCount + ErrorCount
        /// </summary>
        public string FilterCount { get; set; }
        /// <summary>
        /// 发送成功的粉丝数    
        /// </summary>
        public string SentCount { get; set; }
        /// <summary>
        /// 发送失败的粉丝数
        /// </summary>
        public string ErrorCount { get; set; }
        /// <summary>
        /// 原创检测结果
        /// </summary>
        [WxXml(HasChild = true)]
        public CopyrightCheckResult CopyrightCheckResult { get; set; }
    }

    public class ArtResult
    {
        /// <summary>
        /// 群发文章的序号，从1开始
        /// </summary>
        public int ArticleIdx { get; set; }
        /// <summary>
        /// 用户声明文章的状态
        /// </summary>
        public int UserDeclareState { get; set; }
        /// <summary>
        /// 系统校验的状态
        /// </summary>
        public int AuditState { get; set; }
        /// <summary>
        /// 相似原创文的url
        /// </summary>
        public string OriginalArticleUrl { get; set; }
        /// <summary>
        /// 相似原创文的类型
        /// </summary>
        public int OriginalArticleType { get; set; }
        /// <summary>
        /// 是否能转载
        /// </summary>
        public int CanReprint { get; set; }
        /// <summary>
        /// 是否需要替换成原创文内容
        /// </summary>
        public int NeedReplaceContent { get; set; }
        /// <summary>
        ///是否需要注明转载来源
        /// </summary>
        public int NeedShowReprintSource { get; set; }
    }

    public class ResultList
    {
        [WxXml(IsList = true)]
        public List<ArtResult> item { get; set; }
    }

    public class CopyrightCheckResult
    {
        public int Count { get; set; }
        [WxXml(HasChild = true)]
        public ResultList ResultList { get; set; }
        public int CheckState { get; set; }
    }
}
